#类方法，实例方法,静态方法

class Developer:
    programing_language=None#类属性\类的私有属性
    busy=True#类属性
    tshirt=True#类属性
    __case="类的私有属性__case:doing something_A"#声明类的私有属性
    __lotteryitems = ['mac', 'ipad', 'iphone']  ##声明类的私有属性，

    def __init__(self,hairs,color):#初始化
        print("__init__方法，初始化")
        self.__hairs=hairs#实例的私有属性
        self.color=color#实例的属性

    @classmethod
    def get_case(cls):  # 类方法,仅供类调用的方法
        return cls.__case  # 通过类方法获得类的私有属性

    @classmethod
    def __new__(cls, *args, **kwargs):	#类方法
        print("__new__类方法")
        # return cls(*args,**kwargs)#RecursionError:递归错误 maximum recursion depth exceeded while calling a Python object
        return super().__new__(cls)#init class  python  #init class  java

    def programing(self):  #实例方法
        print("实例方法，programing，疯狂补需求中")

    @staticmethod
    def add(a, b):  # 静态方法
        print("静态方法，add:")
        return a + b

print("调用类方法@classmethod， def get_case(cls):返回类的一个私有属性： ")
print(Developer.get_case())
print("调用类方法@classmethod， def __new__(cls, *args, **kwargs): ")
print(Developer.__new__())
print("调用类的静态方法：add：")
print(Developer.add(2,5))

print("创建一个实例")
d_python=Developer(2345678,'yellow')#def __init__(self,hairs,color):初始化两个实例属性
print("调用实例方法d_python.programing: ")
d_python.programing()
